{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Demo 03: Simple Image reconstruction"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This demo will show you a simple image reconstruction can be performed, by using OS_SART and FDK.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Define geometry"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import tigre\n",
    "geo = tigre.geometry_default(high_quality=False)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Load data and generate projections"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "from tigre.Ax import Ax\n",
    "from tigre.demos.Test_data import data_loader\n",
    "# define angles\n",
    "angles=np.linspace(0,2*np.pi,dtype=np.float32)\n",
    "# load head phantom data\n",
    "head=data_loader.load_head_phantom(number_of_voxels=geo.nVoxel)\n",
    "# generate projections\n",
    "projections=Ax(head,geo,angles,'interpolated')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Reconstruct image using OS-SART and FDK"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "OSSART algorithm in progress.\n",
      "Esitmated time until completetion (s): 20.519534\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAADKCAYAAAC11LviAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi40LCBodHRwOi8vbWF0cGxvdGxpYi5vcmcv7US4rQAAIABJREFUeJztfWuwZWWZ3vPKrRUv0CDdDQ3SSHNp7tgIijUQSLyNJVpalDOWYRKq+DMmTjJVivHHTKqSilZS45iaibFLHZmU8RJGA6UTImlFkJJLA3KRBrk2dNMXwEZRVES//Nj72fvZ5zzfXvvss885+6x+n6quXudb67t/a+33/kYpBYlEIpFY/njZUg8gkUgkEpNBftATiUSiJcgPeiKRSLQE+UFPJBKJliA/6IlEItES5Ac9kUgkWoL8oCcSiURLkB/0RCKRaAnyg55IJBItwf6L2dl+++1XDjjgAABARAAAJumput9++wEAfve73826x/4m3ee+hoXYt2kAzw4AvOxlfTrnpZdeAgD8/ve/t/dZ77e//W2vjOdvxYoVvbIDDzywd/2LX/wCwOCZ1GdZn33rs1pHx8H+9b5eE27ftEzXgeU6d5bV1ov33Tuo0DquTOuz/6a5ubE3vffaD/t37ei1roc+O3O8Wmf//fefVQb091jLOGat88ILLzxTSnntrM5mYFE/6AcccACOPvroTsfdweqhnS9e/epXAwB+/vOfz7p30EEH9a61z2EHTzer6YAuNIb9WC1mO27f+CLUPnpaPh807Yd7uUad52te85re9Stf+cre9TPPPAMA+NWvftUr04/zypUrAQBPPfVUr2zv3r0AgJNPPrlXxnMPADfffDOAwRdWn33++ecBALt37+6VvfzlL59VR8/0008/DWDwA8Y67gMC+B+OQw45pHf961//GgDw4osv9sp+85vfAABe9apX9cpe8YpX9K65188991yvzH1IDz744N41z4r+qOk7zLXX/eU6aJmOiT9wJCB1HrpGP/vZz3rX3Hfdf10b1ucaAP1zo2dczwqfPeyww3pluh579uyZ1Sb39fDDD++VbdmyZRtGQIpcEolEoiVYVApd4VguB6WGlFJweOGFF6r39Fe5iWqbFDU8jZjvnBxH5SjwUalypTibuLWmsY8zN54v7VvHRKrxl7/85aw6QJ86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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "<tigre.utilities.plotimg.plotimg instance at 0x7f726bd0b758>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# OS_SART\n",
    "niter=50\n",
    "imgOSSART=tigre.algorithms.ossart(projections,geo,angles,niter, **dict(blocksize=20))\n",
    "\n",
    "# FDK \n",
    "imgfdk=tigre.algorithms.FDK(projections,geo,angles)\n",
    "\n",
    "# Show the results\n",
    "tigre.plotimg(np.hstack((imgOSSART,imgfdk)),slice=32,dim='x')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.15+"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
